package com.allen.imsystem.common.config;

import com.mchange.v2.c3p0.ComboPooledDataSource;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.boot.SpringBootConfiguration;
import org.springframework.context.annotation.Bean;

import javax.sql.DataSource;
import java.beans.PropertyVetoException;

@SpringBootConfiguration
public class DataSourceConfig {
//
//    @Value("${spring.datasource.driver-class-name}")
//    private String jdbcDriver;
//    @Value("${spring.datasource.url}")
//    private String jdbcUrl;
//    @Value("${spring.datasource.username}")
//    private String jdbcUser;
//    @Value("${spring.datasource.password}")
//    private String jdbcPassword;

//    @Bean
//    public DataSource createDataSource() throws PropertyVetoException {
//        ComboPooledDataSource dataSource = new ComboPooledDataSource();
//
//        dataSource.setDriverClass(jdbcDriver);
//        dataSource.setJdbcUrl(jdbcUrl);
//        dataSource.setUser(jdbcUser);
//        dataSource.setPassword(jdbcPassword);
//        dataSource.setInitialPoolSize(10);
//        dataSource.setMaxPoolSize(100);
//        dataSource.setMaxStatements(300);
//        dataSource.setAcquireIncrement(2);
//        dataSource.setIdleConnectionTestPeriod(60);
//        dataSource.setTestConnectionOnCheckout(false);
//        dataSource.setTestConnectionOnCheckin(true);
//        return dataSource;
//    }
}